#include <iostream>
#include <stdlib.h>
#include <cassert>
#include <unistd.h>
using namespace std;

#define PROCESS_NUM 5

int main()
{
    // 1.建立子进程并建立和子进程的通信
    for(int i = 0; i < PROCESS_NUM; i++)
    {
        int fds[2];
        int n = pipe(fds);
        assert( n == 0 ); // 保证建立管道通信成功
        (void)n;//

        pid_t id = fork();
        if(id == 0)
        {
            // 子进程，进行处理任务

            close(fds[1]); // 关闭子进程写端
            exit(0);
        }
        // 下面是父进程
        close(fds[0]); // 关闭子进程读端
    }
    // 2.
    return 0;
}